<?php

class Rubros_model extends CI_Model
{

    private $table = "rubros";

    function __construct()
    {
        parent::__construct();
        $this->load->library("funciones_basicas");
    }

    function insert($row = array())
    {
        $this->db->insert($this->table, $row);
        return $this->db->insert_id();
    }

    function update($id, $row = array())
    {
        $this->db->where("id", $id);
        $this->db->update($this->table, $row);
    }

    function find($id)
    {
        $this->db->where('id', $id);
        $rows = $this->db->get($this->table);
        return $rows;
    }
    
    function find_nombre($nombre)
    {
        $query=sprintf("select id from ".$this->table." where nombre='%s'",$nombre);
        $query_rows = $this->db->query($query);
        $rows = $query_rows->row();
        
        if($query_rows->num_rows()>0)
        {
            return $rows->id;
        }
        else
        {
            return 0;
        }
        
        
    }

    function list_all()
    {
        $query="select url,nombre from rubros group by url order by nombre  ";
        $rows = $this->db->query($query);
        $rows = $rows->result_array();
        return $rows;
    }
    
    function list_empresa_id($empresa_id)
    {
        $query = sprintf("select url from rubros where empresa_id=%s",$this->db->escape_str($empresa_id));
        return $this->db->query($query);
    }

    function delete($id)
    {
        $this->db->where('id', $id);
        $this->db->delete($this->table);
    }
    
    function delete_empresa_id($empresa_id)
    {
        $this->db->where('empresa_id', $empresa_id);
        $this->db->delete($this->table);
    }

    function count()
    {
        return $this->db->count_all($this->table);
    }

    function list_all_limit($start, $end)
    {
        $this->db->select('*');
        $this->db->limit($end, $start);
        $this->db->order_by('id', 'desc');
        return $this->db->get($this->table);
    }
    
    function xml_rubros()
    {
        $query = "select nombre from rubros";
        $rows =$this->db->query($query);
        $rows = $rows->result_array();
        return $rows;
    }
    
    
    function rubros_count()
    {
        $query="select count(*) as cantidad, url, rubros_nombres.nombre as nombre from rubros inner join empresas on empresas.id=rubros.empresa_id inner join rubros_nombres on rubros.url = rubros_nombres.rubros_url group by url order by cantidad desc";
        $rows = $this->db->query($query);
        $rows = $rows->result_array();
        return $rows;
    }
    
    function rubros_menu_final()
    {
        $query="select * from menu_final order by id";
        $rows=$this->db->query($query);
        $rows= $rows->result_array();
        return $rows;
    }

}

?>